package com.ipzoe.web.model;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.ipzoe.cms.domain.Article;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

@Data
@ApiModel(value = "订单详细dto")
public class OrderDetailDTO {

    @ApiModelProperty(value = "订单id")
    private Long id;

    @ApiModelProperty(value = "订单类型")
    private Integer orderType;

    /** 订单号码 */
    @ApiModelProperty(value = "订单编号")
    private String orderSn;

    /** 提交时间 */
    @ApiModelProperty(value = "下单时间")
    private Date createTime;

    /** 支付时间 */
    @ApiModelProperty(value = "购买时间")
    private Date paymentTime;

    /** 支付方式 */
    @ApiModelProperty(value = "支付方式")
    private Integer payType;

    @ApiModelProperty(value = "支付方式描述")
    private String payTypeStr;

    /** 应付金额（实际支付金额） */
    @ApiModelProperty(value = "支付金额")
    private BigDecimal payAmount;

    @ApiModelProperty(value = "会员到期时间")
    private Date memberEndTime;

    @ApiModelProperty(value = "协议列表")
    private List<agreementDTO> agreementList;

    @ApiModelProperty(value = "会员收费说明")
    private Article memFeeArticle;

    @ApiModelProperty(value = "会员权益说明")
    private Article memInterestsArticle;


    @Data
    @ApiModel(value = "协议dto")
    public static class agreementDTO{
        @ApiModelProperty(value = "协议id")
        private Long id;
        @ApiModelProperty(value = "协议名称")
        private String name;
    }

}
